﻿<pre>
知识点一：函数的用途
	函数是对一组代码的封装，目的是完成一个任务，下次遇到相同的任务直接调用这个函数即可，无需重复写代码。

知识点二：理解与函数相关的概念。
	1、函数名，函数的声明
	2、函数体
	3、形式参数
	4、函数的调用
	5、实际参数
	6、输出值
	7、返回值
	8、函数的执行环境
	9、函数与其他代码配合时的执行顺序

知识点三：函数细分种类	
	1、表达式函数与匿名函数
	2、条件函数
	3、嵌套函数
	4、回调函数
	5、递归函数


知识点四：理解执行环境与作用域链

	理解执行环境：JavaScript代码都是在一个执行环境中被执行的，执行环境是一种机制，用来完成JS运行时在作用域、生存期等方面的处理。
			执行环境规定了变量或函数是否有权访问其他数据，并决定各自行为。
			
	在JS中，可执行的JS代码分三种类型： 
		1. Global Code，即全局的、不在任何函数里面的代码，例如：一个js文件、嵌入在HTML页面中的js代码等。 
		2. Eval Code，即使用eval()函数动态执行的JS代码。 
		3. Function Code，即用户自定义函数中的函数体JS代码。 
		
		不同类型的JS代码具有不同的执行环境，这里我们主要掌握全局执行环境和函数执行环境.

	一. 在一个页面中，第一次载入JS代码时创建一个全局执行环境，全局执行环境是最外围的执行环境。
			在Web浏览器中，全局执行环境被认为是window对象。因此，所有的全局变量和函数都是作为window对象的属性和方法创建的。
	
	二. 当调用一个 JavaScript 函数时，该函数就会进入与该函数相对应的执行环境。
		如果又调用了另外一个函数（或者递归地调用同一个函数），则又会创建一个新的执行环境，并且在函数调用期间执行过程都处于该环境中。
		当调用的函数执行完成后会返回到原始执行环境（调用现场）。
		因而，运行中的 JavaScript 代码就构成了一个执行环境栈（见执行环境栈图）。
		
	代码示例如下： 
		function A(){
			function B(){
				document.write("执行");
			}
			B();
			document.write("环境");
		}
		A();	//输出：执行环境
 

*/
</script>
</pre>